home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 November: Tool Chest / Dev.CD Nov 00 TC Disk 1.toast / Sample Code / Contributed / SpriteWorld / SpriteWorld Files / BlitPixie / MPW / BlitPixie.make < prev    next >
Encoding:
Text File  |  2000-10-06  |  5.1 KB  |  179 lines  |  [TEXT/MPS ]

  1. #------------------------------------------------------------------------------
  2. #
  3. #    Makefile for MPW (Macintosh Programmers Workshop by Apple)
  4. #
  5. #   File:       BlitPixie.make
  6. #   Project:    BlitPixie
  7. #
  8. #    Written by Anders F Björklund <afb@algonet.se>
  9. #    
  10. #------------------------------------------------------------------------------
  11.  
  12. CC68K             = {C}        # Apple MrC
  13. CCPPC            = {PPCC}    # Symantec SC
  14. LINK68K         = Lib
  15. LINKPPC         = PPCLink
  16.  
  17. LibName68K        = BlitPixieLib.o
  18. LibNamePPC        = BlitPixieLib.x
  19.  
  20. Options         = -d USE_ASSEMBLY=0 -d USE_GENERIC_C=0
  21. Warnings        =
  22.  
  23. ASM68K             = Asm
  24. ASMPPC            = PPCAsm
  25.  
  26. ASM68KOptions   =
  27. ASMPPCOptions    = -w 3200 # avoid warning: "you used r0 instead of 0" (I need to, for old CW)
  28.                           # NOTE: the above gives a warning with PPCAsm < 1.3 <sigh>
  29.                           
  30. #------------------------------------------------------------------------------
  31.  
  32. Headers          = -i "::Headers:"
  33.  
  34. Sources         =     "::Sources:"
  35.  
  36. AsmSources      =    "::Assembler:"
  37.  
  38. Output          =    "::Libraries:"
  39.  
  40.  
  41. obj68K             =     :Objects68K:
  42. objPPC            =     :ObjectsPPC:
  43.  
  44. IncludesFolders    =     {Headers}
  45.  
  46. SymOptions        =     -sym off        # turn this on to debug with SADE/R2Db
  47.                                     # or PowerMac Debugger
  48.  
  49. Debug68KOptions    =     -opt speed        # turn this off to build debug 68K code
  50. DebugPPCOptions    =     -opt speed        # turn this off to build debug PowerPC code
  51.  
  52. CCOptions       =    {IncludesFolders} {Options} {Warnings} {SymOptions}
  53.  
  54. CC68KOptions    =     {CCOptions} {Debug68KOptions} -model far
  55. CCPPCOptions    =     {CCOptions} {DebugPPCOptions}
  56.  
  57. LibOptions      =     {SymOptions} 
  58. LibOptions68K   =     {LibOptions} 
  59. LibOptionsPPC    =     {LibOptions} -xm l
  60.  
  61. Lib68K            =     {Output}{LibName68K} 
  62. LibPPC          =     {Output}{LibNamePPC} 
  63.  
  64. #------------------------------------------------------------------------------
  65. # These are the objects that we want to include in the library.
  66. #-------------------------------------------------------------------------------
  67.  
  68. LibObjects68K        =    ∂
  69.         {obj68K}BlitPixieAllBit.a.o ∂
  70.         {obj68K}BlitPixieClear.a.o ∂
  71.         {obj68K}BlitPixieCodeCompiler.c.o ∂
  72.         {obj68K}BlitPixieColorkey.c.o ∂
  73.         {obj68K}BlitPixieDoubled.c.o ∂
  74.         {obj68K}BlitPixieDoubled.a.o ∂
  75.         {obj68K}BlitPixieDoubleRects.a.o ∂
  76.         {obj68K}BlitPixieFlip.c.o ∂
  77.         {obj68K}BlitPixieFlip.a.o ∂
  78.         {obj68K}BlitPixieMask.c.o ∂
  79.         {obj68K}BlitPixieMask.a.o ∂
  80.         {obj68K}BlitPixieMaskCollision.a.o ∂
  81.         {obj68K}BlitPixieRect.a.o ∂
  82.         {obj68K}BlitPixieRLE.c.o ∂
  83.         {obj68K}BlitPixieRLE.a.o ∂
  84.         {obj68K}BlitPixieRLECollision.c.o ∂
  85.         {obj68K}BlitPixieRLECompiler.c.o ∂
  86.         {obj68K}BlitPixieRotoZoomer.c.o ∂
  87.         {obj68K}BlitPixieScale.c.o ∂
  88.         {obj68K}BlitPixieUtils.c.o ∂
  89.         {obj68K}BlitPixieUtils.a.o ∂
  90.         {obj68K}BlitPixieBlitClear.a.o ∂
  91.         {obj68K}BlitPixieBlitErase.a.o ∂
  92.         {obj68K}BlitPixieDirtyRects.c.o ∂
  93.         {obj68K}BlitPixieDirtyRects.a.o ∂
  94.         #
  95. LibObjectsPPC    =    ∂
  96.         {objPPC}BlitPixieClear.s.x ∂
  97.         {objPPC}BlitPixieColorkey.c.x ∂
  98.         {objPPC}BlitPixieDoubled.c.x ∂
  99.         {objPPC}BlitPixieDoubled.s.x ∂
  100.         {objPPC}BlitPixieDoubleRects.s.x ∂
  101.         {objPPC}BlitPixieFlip.c.x ∂
  102.         {objPPC}BlitPixieFlip.s.x ∂
  103.         {objPPC}BlitPixieMask.c.x ∂
  104.         {objPPC}BlitPixieMask.s.x ∂
  105.         {objPPC}BlitPixieMaskCollision.s.x ∂
  106.         {objPPC}BlitPixieRect.s.x ∂
  107.         {objPPC}BlitPixieRLE.c.x ∂
  108.         {objPPC}BlitPixieRLE.s.x ∂
  109.         {objPPC}BlitPixieRLECollision.c.x ∂
  110.         {objPPC}BlitPixieRLECompiler.c.x ∂
  111.         {objPPC}BlitPixieRotoZoomer.c.x ∂
  112.         {objPPC}BlitPixieScale.c.x ∂
  113.         {objPPC}BlitPixieUtils.c.x ∂
  114.         {objPPC}BlitPixieUtils.s.x ∂
  115.         {objPPC}BlitPixieBlitClear.s.x ∂
  116.         {objPPC}BlitPixieBlitErase.s.x ∂
  117.         {objPPC}BlitPixieDirtyRects.c.x ∂
  118.         {objPPC}BlitPixieDirtyRects.s.x ∂
  119.         #
  120.  
  121. #------------------------------------------------------------------------------
  122. # These are modified default build rules.  
  123. #------------------------------------------------------------------------------
  124.  
  125. {obj68K}        ƒ    {Sources}
  126. {objPPC}        ƒ    {Sources}
  127.  
  128. .c.o            ƒ    .c
  129.     Echo "# Compiling {Default}.c using {CC68K}"
  130.     {CC68K} {CC68KOptions} {DepDir}{Default}.c -o {TargDir}{Default}.c.o
  131.  
  132. .a.o            ƒ    .c
  133.     Echo "# Compiling {Default}.a using {ASM68K}"
  134.     {ASM68K} {ASM68KOptions} {AsmSources}"68K:"{Default}.a -o {TargDir}{Default}.a.o
  135.  
  136. .c.x            ƒ    .c
  137.     Echo "# Compiling {Default}.c using {CCPPC}"
  138.     {CCPPC} {CCPPCOptions} {DepDir}{Default}.c -o {TargDir}{Default}.c.x
  139.  
  140. .s.x            ƒ    .c
  141.     Echo "# Compiling {Default}.s using {ASMPPC}"
  142.     {ASMPPC} {ASMPPCOptions} {AsmSources}"PPC:"{Default}.s -o {TargDir}{Default}.s.x
  143.  
  144. #------------------------------------------------------------------------------
  145. # These are the targets.
  146. #------------------------------------------------------------------------------
  147.  
  148. BlitPixie            ƒ All
  149. 68K.Debug            ƒ 68K
  150. PPC.Debug            ƒ PPC
  151. Debug                ƒ All
  152. 68K.Final            ƒ 68K
  153. PPC.Final            ƒ PPC
  154. Final                ƒ All
  155.  
  156. All                    ƒ 68K PPC
  157. 68K                    ƒ {Lib68K}
  158. PPC                    ƒ {LibPPC}
  159.  
  160. Clean                ƒ
  161.     Echo "# Removing objects"
  162.     Delete -i {LibObjects68K} {LibObjectsPPC}
  163.     Delete -y {obj68K} {objPPC}
  164.  
  165. Clean-All            ƒ Clean
  166.     Echo "# Removing binaries"
  167.     Delete -i {Lib68K} {LibPPC}
  168.  
  169. #----------------------------------------------
  170.  
  171. {Lib68K}            ƒƒ {LibObjects68K}
  172.     Echo "# Linking 680X0 library {LibName68K}"
  173.     {LINK68K} {LibOptions68K} {LibObjects68K} -o {Targ}
  174.  
  175. {LibPPC}            ƒƒ {LibObjectsPPC}
  176.     Echo "# Linking PowerPC library {LibNamePPC}"
  177.     {LINKPPC} {LibOptionsPPC} {LibObjectsPPC} -o {Targ}
  178.  
  179.